Inexpensive computer-aided learning methods and apparatus for learners

ABSTRACT

A computer-aided learning method and apparatus for a learning user to learn materials inexpensively. Not only does the apparatus provide the user the freedom as to where and when to learn, and the guidance as to what to learn, the apparatus also reduces a significant hurdle to learning—money. The apparatus retrieves a user identifier entered by the user, and determines whether the user is a learning user or an institute user. If the user is a learning user, the apparatus allows the user to access information regarding learning materials. If the user is an institute user, the apparatus permits the user to access information regarding at least one learning user. The institute user might be interested to use the apparatus to recruit employees to fill job openings. A learning user pays significantly less than an institute user to access information, so as to encourage the learning user to work on learning materials. The apparatus can also track and update information regarding the users.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/586,307, filed on Oct. 26, 2006, entitled “Computer-Aided LearningMethods and Apparatus on Projects,” which application is a continuationof U.S. patent application Ser. No. 10/692,274, filed on Oct. 22, 2003,and subsequently issued on Apr. 10, 2007, as U.S. Pat. No. 7,201,580,entitled “Inexpensive computer-aided learning methods and apparatus forlearners,” which application claims priority to U.S. patent applicationSer. No. 10/113,225, filed on Mar. 30, 2002, and subsequently issued onFeb. 3, 2004, as U.S. Pat. No. 6,685,478, entitled “Inexpensivecomputer-aided learning methods and apparatus for learners,” whichapplication claims priority to U.S. patent application Ser. No.09/290,770, filed on Apr. 13, 1999, and subsequently issued on Jun. 4,2002, as U.S. Pat. No. 6,398,556, entitled “Inexpensive computer-aidedlearning methods and apparatus for learners,” all incorporated byreference into this application.

BACKGROUND OF THE INVENTION

This invention relates generally to computer-aided learning methods andapparatus, and more particularly to inexpensive computer-aided learningmethods and apparatus.

We are living in the midst of tremendous technological changes. In theworkplace, technology is replacing numerous workers. Many of our jobskills might become obsolete within years. Though technology ispermeating gradually into every stratum of the society, it is very hardto keep up with so much changes.

Not only is it hard to keep up, technology has made the world muchsmaller, and global competition much more intense. Not only facingglobal competition, we are also challenged by the younger generation.Many of them have access to computers and the Web at a very young age.They might be much more effective and efficient than the oldergeneration in performing computer-oriented jobs.

Drastic and rapid changes in the economy lead to massive re-deploymentof the labor force. Due to technology revolutions in the industrialnations, and social upheaval in many third-world countries, every year,thousands of job titles with their job functions are being eliminated.Numerous industries experience massive layoffs, which are usually moregeared towards the older and higher-paid employees. This problem isexacerbated by the aging of the population when employers tend to retainthe younger work force, with more current education. Many employees arein transition. They need jobs. Such global challenges are not limited tothe private industries. Millions of civil service employees and militarypersonnel have to be re-trained.

Employees have to learn. However, employees may not have time to learn.Computer-aided learning alleviates some of the problem because learningfrom a computer at least allows users to learn at their own pace and, toa certain degree, in a location more convenient to them. But,computer-aided learning is a new medium of learning, not accustomed toby many. To ask them to pay a high tuition to learn through a new mediumis unreasonable. Moreover, many may not be accustomed to learn whileworking. They assume that they have finished with all of their learningat schools. Also, for the numerous employees-in-transition, they may notbe interested to pay to learn at all.

From the employers' perspective, they need to stay competitive.Employers have to produce good products and services at reasonableprices. With competition from so many directions, employers have toconstantly re-train their employees and recruit new ones. It is also notuncommon for employers to lay off some of them.

It is a constant challenge for employers to decide whom to hire. Just asemployees need to learn about new job skills, employers need to learnabout the strengths, weaknesses and preferences of their employees orpotential employees.

It should be apparent that there is a need to automatically provideappropriate learning materials in an inexpensive and easily accessiblemanner to employees, while providing information about potentialemployees to employers.

SUMMARY OF THE INVENTION

The present invention provides computer-aided learning methods andapparatus that encourage employees to learn appropriate learningmaterials by providing them in an inexpensive and easily accessiblemanner, while allow employers to access information on potentialemployees.

A computer-aided learning system can provide users with learningmaterials in an easily accessible manner, significantly increasing theirfreedom to choose when and where to learn. The learning materials canalso be quickly updated. In view of the drastic technological andsocietal changes, it is imperative that learning materials have toconstantly keep pace with the changes.

On the other hand, learning through a computer has at least one majorchallenge. It is a relatively new approach to learning. Since manyassume that they have done with all of their learning at schools, andare skeptical to anything that is not traditional, they are notinterested in paying a lot of money to learn from a computer.

Though many do not want to pay a lot to learn from computers,computer-aided learning materials are not cheap to produce. It isdifficult to prepare good computer-aided learning materials that notonly can capture our attention, but also teach effectively. Companiesthat have invested heavily in producing these materials are not about tosell them inexpensively. They need to recoup their investment.

Drastic technological and society changes require companies to transformthemselves to stay competitive. They need to find people to do new jobs.Hiring the right employee is a critical success factor for manyemployers. Many companies are willing to pay at least 20% of the firstannual income of their new hires to recruiters because recruiters savethem time in finding and pre-screening candidates. Also, good recruitersknow their candidates, and are able to provide companies with valuableinformation on them. Typically, companies have a better chance of makingthe right hiring decision if they have more information on a candidate.

New computer-aided learning systems and methods can provide a lot oflearning information regarding a user, as taught in a number of issuedpatents, such as Learning System And Method Based on Review, U.S. Pat.No. 5,863,208; Methods and Apparatus To Assess And Enhance A Student'sUnderstanding In A Subject, U.S. Pat. No. 5,779,486; Relationship-BasedComputer-Aided Educational System, U.S. Pat. No. 5,727,951; RewardEnriched Learning System And Method, U.S. Pat. No. 5,743,746; andLearning Method And System Based on Questioning, U.S. Pat. No.5,836,771.

Information on users' learning activities is very useful for employersbecause they provide indication on many factors, including what theusers know and their preferences. Many companies are willing to pay forsuch information.

In view of the above observations and insights, the invented methods andapparatus provide inexpensive computer-aided learning materials to usersto work on. Such users can be known as learning users. Though thematerials can be of high quality and can be specifically tailored to theneeds of the users, the learning users do not have to pay much to learnfrom the materials. The costs of the learning materials and the servicesproviding them are predominantly paid for by employers or instituteusers.

In return, the present invention allows institute users to accessinformation regarding the learning users. The information can helpinstitute users recruit the right people for their job openings, such asbased on information from the learning activities of potentialemployees.

In one embodiment, there are at least two types of users: Learning usersand institute users. An institute user can be a representative from acompany, or can be a software agent from the company. An apparatus isconfigured to retrieve a user identifier entered by a user, anddetermine the type of user based on the identifier.

If the user is a learning user, the apparatus allows the user to accessinformation regarding learning materials. The apparatus can track theuser's learning activities and update the user's profile accordingly.

If the user is an institute user, the apparatus allows the user toaccess information regarding at least one learning user. As theinstitute user is querying information, the apparatus can track theinstitute user's activities and keep a log of its use. If the instituteuser is interested in recruiting, the apparatus may automaticallyperform the best match between attributes of the potential candidate forthe job and attributes of the users in its database. In yet anotherembodiment, the institute user may also use the present invention toconduct in-house training for its employees.

To encourage learning users to learn, they do not have to pay much tolearn. If possible, money should not be a factor that deters users tolearn from the apparatus. On the other hand, institute users have to paysignificantly more than the learning users to access information fromthe apparatus. In one embodiment, it is free for the learning users toaccess information regarding learning materials, but institute usershave to pay to access information regarding learning users from theapparatus.

Other aspects and advantages of the present invention will becomeapparent from the following detailed description, which, when taken inconjunction with the accompanying drawings, illustrates by way ofexample the principles of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows one set of steps to implement one embodiment of the presentinvention.

FIG. 2 shows an apparatus to implement one embodiment of the presentinvention.

FIG. 3 shows examples of different types of users for the presentinvention.

FIG. 4 shows examples of attributes of the learning user in the presentinvention.

FIG. 5 shows examples of tracking attributes of the learning user in thepresent invention.

FIG. 6 shows examples of interests of the institute users in the presentinvention.

FIGS. 7 A-B show examples of hardware to implement one embodiment of thepresent invention.

Same numerals in FIGS. 1-7 are assigned to similar elements in all thefigures. Embodiments of the invention are discussed below with referenceto FIGS. 1-7. However, those skilled in the art will readily appreciatethat the detailed description given herein with respect to these figuresis for explanatory purposes as the invention extends beyond theselimited embodiments.

DETAILED DESCRIPTION OF THE INVENTION

There are a number of ways to implement the present invention. FIG. 1shows one set of steps, 100, to implement one such embodiment by, forexample, an apparatus shown in FIG. 2, while FIG. 3 shows examples ofdifferent types of users using the apparatus. There can be other typesof users, such as system administrators, but only two are shown in FIG.3.

In one embodiment, there are at least two types of users: Those who areprimarily interested to use the apparatus 200 to work on learningmaterials, and they are known as the learning users, 252; and those whoare primarily interested in learning about the learning users, and theyare known as the institute user, 254. In another embodiment, if the useris primarily interested in finding a job or in career counseling, theuser would be classified as a learning user. In yet another embodiment,a learning user is not allowed to access the learning activities ofother learning users through the apparatus. In one embodiment, alearning user is not allowed to access the learning end results of otherlearning users through the apparatus. Learning end results can bedefined as the end results of learning a subject matter, such as thegrade one gets after finishing a course, or whether one has received acertificate or graduated from a course.

An institute user, 254, can be a school, 256, or a company, 258; or arepresentative from a school or a company. Each user has its own useridentification, which can be a number that identifies the user.

A retriever 202 retrieves (Step 102) the user identifier 250 entered bythe user into the apparatus. In one embodiment, the user is a first timeuser, and the apparatus 200 asks the user a number of questions. Basedon the answers, the apparatus creates a user profile of the user, whichcontains information regarding the user.

Initially, for example, the user may be asked if he is a primarilyinterested to work on learning materials. If his answer is yes, he wouldbe classified as a learning user. If his answer is no, he would beclassified as an institute user.

FIG. 4 shows examples of information or attributes regarding a learninguser, 300. One attribute is his contact information, 302, such as hisresidential address, phone number and email address.

Another attribute is his educational background 304, including hisyear(s) of graduation, degree(s) obtained and name(s) of school(s). Theeducational background can also include his previous learning history,such as classes he took, when he took them and whether he receivedgraduation certificates or not.

Another attribute is his work experience 306, including his previous jobtitle(s), 308, and previous job(s) performed, 310, such as the type ofprojects, and when they were done. Such questions can be presented asmultiple choice questions for the user to pick an answer.

Another attribute can be his preferences, 312, including salary, 314,location, 316, time, 318, and job 320. The location preference includeshis preferred work location, such as working two days from home, andthree days at a location within a 50 miles radius from home. Thelocation preference can also include his preferred learning location.The time preference includes his preferred work hours, such as from 9 amto 5 pm, or willingness to work overtime every other workday during theworkweek. The time preference, 318, can also include his preferredlearning time, such as at night after 6 pm. The job preference, 320,includes the type of job he is interested in, such as to be a Webmaster.

Another attribute can be his learning objective, 322, including what hewants to learn. The learning objective, 322, can be determined for him,based on, for example, his job preference, educational background andprevious work experience. This will be further explained below.

Other additional attributes include his name. The user may be asked toscan in his picture, which can be a JPEG file.

It can be up to the user to decide if he wants to enter some of theabove information, such as his picture, into his user profile. Also,certain information in his profile can be kept confidential if the userdesires. For example, the apparatus can maintain his contact informationconfidential, restricting institute users from gaining access, unlesspermitted by the learning user otherwise.

In one embodiment, information about the learning user can becategorized as confidential and non-confidential. Institute users haveaccess to non-confidential information, but confidential information isnot accessible without express consent from the learning user. When thelearning user is entering information into the apparatus, he can alsodesignate them as confidential or non-confidential.

In another embodiment, the user is not a first time user. He enters hisuser identifier into the apparatus. The retriever 202 retrieves the useridentifier entered for a determinator 204 to determine (Step 104) itstype. In this example, the user is a learning user, 252, and is allowed(Step 106) access to learning materials. The learning materials can bein a learning materials storage medium, 206, which may be accessiblethrough a network, such as the World Wide Web.

In one embodiment, a learning material ascertainer, 208, ascertainslearning materials for the learning user, 252. The ascertainer canascertain a learning objective for the user, which depends oninformation regarding the user.

The ascertainer can identify the objective or learning materials basedon applying a set of rules to, for example, the user's educationalbackground, work experience and preferences. The user's work experienceprovides indications on his experience and knowledge in specific areas.As an example, if he spends a lot of time on a project, the ascertainerinfers that he understands the project, and the subject areas behind theproject. This implies that he does not need to work on introductorymaterials in those areas. To illustrate, the ascertainer can considerthe amount of time to train an average user with similar educationalbackground as the user for a job the user prefers. If a recent computerscience graduate needs to take a two-semester class to become an averageJava programmer, and if the user has been working on C++ projects forthe past five years, the ascertainer would decide that he only needs totake a one-semester class with less introductory materials to become anaverage Java programmer. Another example is that the preferred job is tobe a patent paralegal. The user has been a general paralegal for thelast six years, but does not understand the procedures of patentprosecution. Then the learning objective would be to learn suchprocedures in the next nine months.

Based on the ascertained learning objective, the ascertainer could alsoselect for the user, or guide the user to, learning materials to preparethe user for the job position. For example, the objective is to learnhow to speak introductory Spanish in six months. The ascertainer canthen select the place and the time to learn, or can identify thecomputer-based training classes available for her to learn. Theidentification process can be based on key words. As another example,the learning objective is to learn how to write fictions. Then, theascertainer, based on words such as write and fictions, searches thelearning material storage medium or other resources for learningmaterials whose titles have the same two key words.

In one embodiment, the ascertainer directly identifies learningmaterials for the user, without first identifying his learningobjective.

One embodiment includes a presenter, 210, for presenting the ascertainedlearning materials to the user.

The learning user's information, including his usage of the apparatus,200, can be tracked by the apparatus, 200. One embodiment includes atracker 212 to track the user's information or attributes (Step 108),and an updater 214 to update (Step 110) the user's profile, such as hislearning profile, based on the tracked information. In one embodiment,tracking includes analyzing, and the tracked information includesanalyzed information.

FIG. 5 shows examples of attributes or information regarding the userthat the tracker 212 can track. They include the user's contactinformation, 302, work experience, 306, and preferences 312. As the userlogs into the apparatus, 200, the apparatus can ask the user if he hasrecently changed anyone of the above attributes to keep track of hisprogress and interests. If he has, the updater 214 can update the userprofiles accordingly. In one embodiment, the user can access and changehis profile directly.

The tracker can also track the user's learning activities, 350. This caninclude the classes he has received certificates from after graduation,352; the degree he received; the duration of time it took him to get thecertification or the degree, 354; and his performance, if available. Thelearning activities can also include the frequencies he worked on anarea, 356.

Rules can be applied to such tracked information to provide additionalinformation regarding the user, such as indication as to the user'sunderstanding level in an area. For example, if an average user takesone month to finish the course, and he needs a much longer time period,such as three months, probably, he is weak in that subject. Anotherexample is that if he works on an area repeatedly, probably, he is quiteweak in that area.

The learning activities can also include the areas, 358, he has notworked on. For example, he is using the apparatus to learn features in anew product, 368, of a company. It turns out that he has never workedone specific feature the company believes customers really value. Thismight provide indication to the company as to the importance of thatfeature.

The information tracked, either by themselves or after analysis, can beprovided to the updater 214 to update information regarding the user,such as updating his profile previously stored. For example, he hasreceived a certificate from a company after he finished the trainingprogram offered by the company on its new product. His user profile canbe updated by such information. As another example, if the analyzedresult is that he is strong in fixing engines, such information isstored in his user profile. In one embodiment, with his permission,institute users are allowed access to such information.

The tracking and updating processes can be for billing and accountingpurposes. What is accountable can include, for example, the amount oftime spent on the apparatus. Based on the tracked and updatedinformation, records can be generated to create invoices for thelearning user.

The user can be an institute user, 254. The determinator 204 can allowthe user to access information regarding at least one learning user(Step 112), such as using a query engine, 212, to query informationregarding the at least one learning user. The institute user can alsoquery her own profile.

FIG. 6 shows examples of interests, 400, of the institute user. Thetracker 212 can track (Step 114) her attributes, including her usage ofthe apparatus; and an updater, 214, can update (Step 116) her profile,216, if necessary.

She might be interested in recruiting, 402, candidates to join herinstitute. She can query users' profiles to access information regardinglearning users. Information of interests can include some of hislearning activities, such as the certificate received after working on asubject matter; the frequency a candidate changed jobs; his jobpreferences; his previous work experience; and his physical location.

In one embodiment, the institute user can access at least some learningactivities of learning users. The extent of activities the instituteuser can access can be up to individual learning users. For example, onelearning user may allow the institute user free access of all of itslearning activities; and another learning user may restrict theinstitute user from accessing the titles of the courses he failed.

The institute user can query the system, by asking questions. Methodsfor a system to comprehend and to answer questions can be found, forexample, in U.S. patent, entitled, Learning Method And System Based onQuestioning, U.S. Pat. No. 5,836,771.

In another embodiment, she can answer multiple choice questions from theapparatus to formulate her request. She can specify characteristics ofher ideal candidate. Based on her specifications, the query engine 212can automatically search and identify the one or more candidates withbest-matched profiles with the characteristics of the ideal candidate.In another embodiment, based on her answers, software agents configuredby her or the query engine, can be generated to search the user profiledatabase automatically for a number candidates that best match herrequests. The agents or searches can be automatically activated due tochanges in information of the institute user, or changes in informationof certain learning users. Criteria of searches can be automaticallyupdated in view of such changes before the query engine automaticallylaunches the appropriate search. For example, the institute user mighthave to find two such candidates instead of one. Such updates andsearches can be done daily or weekly.

The apparatus can further establish contact between the institute userand the one or more candidates identified. For example, initially, thecandidates identified by the searches do not have to include their name,but just their qualifications. In one embodiment, if the institute useris interested in one or more of the candidates identified, she canhighlight those candidates. The apparatus would have general informationregarding the position transmitted to the candidates. An interestedcandidate can have his identity revealed to the institute user, againthrough the apparatus. With the candidate's permission, his picture canalso be transmitted to the institute user. Then the apparatus can havethe institute user's identity with a more detailed description of thejob position transmitted to the candidate, and can set up an initialinterview for the candidate.

The tracker 212 can track a number of the institute user's recruitingactivities, such as (i) the number of candidates she identified to bepotential candidates, (ii) the number of candidates referred to her, and(iii) the number of queries she did, and the time she did each of them.The updater 214 can update her profile based on the tracked information.This can be for setting up billing and accounting records. Such recordscan be used to create invoices for the institute user.

The institute user might be interested in advertising, 404, her jobopening to be filled, or her product, which can be a service. Theapparatus includes an advertisement generator, which allows her toadvertise. In one embodiment, the generator formats the advertisementprovided by the user, based on instructions from the user. For example,the user might specify the size of the advertisement, and its location.The advertisement can be targeted directly to specific users, 405,interested in her institute, such as interested in her products, or hertype of jobs. This can be done, for example, by showing theadvertisement on the screen of the learning materials related to theinstitute, such as related to the products or the type of jobs. In oneembodiment, the advertisement is only presented to learning users. Inanother embodiment, the advertisement can be restricted from beingpresented to other institute users that sell products similar to theinstitute user, or are in the same field or industry sector as theinstitute user. As an example, the institute user is in homeconstruction, and her advertisement of recruiting construction workerswill not be presented to other home construction institute users.

The tracker 212 can track the size of the advertisement, the locationthe advertisement to be placed, the number of advertisements posted, andthe duration of the postings. The tracker can also track the number oftimes the page with her advertisement has been accessed. The updater canupdate information of the institute user based on the trackedinformation. Then, the information regarding learning users theinstitute can access includes the number of times her advertisement hasbeen shown to learning users.

She might want to use the apparatus as technical supports for herproducts, by providing appropriate training, 407, for them. She mightalso want to identify interests, 406, in her new products. In oneembodiment, she can provide learning materials regarding her newproducts to the apparatus for users to learn. For example, her newproduct is a handheld machine. Learning users can use the apparatus tolearn how to use the many features of the machine. The tracker tracksthe usage of the learning users. The institute user has built into themachine a feature X and a feature Y that typical users have to learnbefore they know how to use them. The institute user thinks that featureX is dynamic, and none of their competitors have such a feature; andfeature Y should be quite easy to use. However, less than 1% of theusers have learnt how to use feature X. Also, 90% of learning users havedifficulties learning how to use feature Y, as shown, for example, bythe same learning users going back to learn feature Y more than threetimes. Such information regarding learning users can be tracked toprovide market information on (learning users' interests in) the machineback to the institute user. The institute user can use such marketinformation to help them improve on their next release. For example,probably for the next generation handheld machine, feature X should bedropped, and the user-friendliness aspect of feature Y should beenhanced. One way to feed the learning users' interests back to theinstitute user is by updating the institute user profile with suchinformation.

Her interest might be to train her employees, 408, such as by providingin-house training for them. She can also get training herself throughaccessing learning materials. For example, she is a project supervisorusing the apparatus to learn new techniques in HDSL installation, and tohire a person for ISDN installation. In one embodiment, she can be bothan institute user and a learning user by having two different useridentifiers.

She might be interested in updating her information or profile, 410, oraccessing them, 412. The tracker can track the number of times sheaccessed or updated her profile, and the updater can update such userinformation accordingly.

To encourage learning users to work on learning materials, in oneembodiment, they pay significantly less than institute users to accessinformation from the apparatus. For example, institute users pay muchmore to query information from the apparatus than learning users toaccess learning materials from the apparatus. In one embodiment,learning users are paying significantly less when the annual payment orannual subscription fee of a learning user is less than 1/500 times ofthat of an institute user.

In another embodiment, a learning user is paying significantly less whenit is free for the learning user to access information from theapparatus, while the institute user has to pay. The learning user doesnot have to pay the owner of the apparatus 200 or the provider of themethod, 100, to access information, but the institute user has to.

In yet another embodiment, a learning user is paying significantly lesswhen the learning user is paying approximately the per capita cost ofoperating the apparatus, and the institute user is paying above the percapita cost of operating the apparatus. One definition of per capitacost is the total expense of operating the apparatus divided by thetotal number of learning and institute users of the apparatus.

In one embodiment, a learning user is paying significantly less when thelearning user is paying below the per capita cost of operating theapparatus, and the institute user is paying above the per capita cost ofoperating the apparatus.

FIGS. 7A-B show examples of hardware to implement one embodiment of thepresent invention. FIG. 7A shows one physical embodiment 650implementing one embodiment of the invention, preferably in software andhardware. The embodiment 650 includes a server computer 652 and a numberof client computers, such as 654, which can be a personal computer. Eachclient computer communicates to the server computer 652 through adedicated communication link, or a computer network 656.

FIG. 7B shows one embodiment of a client computer 654. It typicallyincludes a bus 659 connecting a number of components, such as aprocessing unit 660, a main memory 662, an I/O controller 664, aperipheral controller 666, a graphics adapter 668, a circuit board 680and a network interface adapter 670. The I/O controller 664 is connectedto components, such as a harddisk drive 672 or a floppy disk drive 674.The peripheral controller 666 can be connected to one or more peripheralcomponents, such as a keyboard 676 or a pointing device 682. Thegraphics adapter 668 can be connected to a monitor 678. The circuitboard 680 can be coupled to audio signals 681; and the network interfaceadapter 670 can be connected to the network 656, which can be theInternet, an intranet, the Web or other forms of networks. Theprocessing unit 660 can be an application specific chip. In anotherembodiment, the client computer 654 is a thin-client, with much lesscomputation and memory power than the server computer, 652.

Different elements in the present invention may be in different physicalcomponents. For example, the apparatus may be in a client computer. Inanother embodiment, the apparatus is in a client computer, except thelearning materials storage medium, which is in a server computer. In yetanother embodiment, the server computer also hosts a storage medium withthe user profiles, 216. In one embodiment, the apparatus is in theserver computer, except the presenter, which is in the client computer.The user receives information accessed from the client computer.

It should be obvious to those skilled in the art that different elementsin the present invention can be implemented in hardware or software orboth. For example, the determinator and the query engine can be writtenin software, or can be on a circuit, such as afield-programmable-gate-array, where the program embodying thedeterminator and the query engine is burnt into a circuit. As anotherexample, a processing unit 660 can implement the determinator; a mainmemory 662 can store the user profile; the same or a differentprocessing unit can implement the retriever and the query engine; andthe same main memory or a different memory can store the learningmaterial storage medium.

One embodiment of the present invention can be implemented in a Webserver. The server includes a HTTP server or program that understandsHTTP or equivalent protocol. Just as an example, the name of the serveris www.joblearn.com.

A user executes his browser in his computer to access learning materialsby entering an URL, such as the following:

http://www.joblearn.com/job/user=tassels&subject?vendor=microsoft&product=excel

From the URL, the browser determines that the protocol to use is HTTP.The browser also determines that the data packets are constructed basedon the TCP format to establish a connection with the Web server, asspecified by the HTTP protocol.

The browser then extracts the name of the Web server from the secondcomponent of the URL—www.joblearn.com—and attempts to establish aconnection to the server.

To establish the connection, the browser can identify the IP address ofthe server. For example, the browser may retrieve the IP address from adomain name server.

Based on the IP address, the browser sends a request to the Web serverto establish a TCP connection with the HTTP program running on theserver. This can be through establishing the connection to the serverwith the default TCP port number, 80, for the HTTP program.

After the Web server receives and accepts the request, the browsertransmits to the Web server other portions of the URL—

job/user=tassels&subject?vendor=microsoft&product=excel.

The Web server examines them, and invokes a program named job. Assumethat previously a Web master has configured the Web server to identifythe term, job, at that part of the URL as an indication of invoking anembodiment of the present invention. The Web server also determines thatthe remaining portions of the URL is a CGI script. To simplify thedescription, instead of stating that the program, job, does a certaintask, the description states that the Web server does the task.

The script indicates that the user is identified as tassels. Based oninformation previously stored, the Web server, based on the program,job, determines the identifier belong to a learning user. The Web serverfurther determines that tassels intends to learn Microsoft Corporation'sproduct Excel. Appropriate learning materials are then re-transmittedback to the browser to be presented to the learner.

In the above example, information is accessed through a HTTP server.Other commonly available accessing mechanisms are also applicable, suchas JDBC or CORBA.

In addition to learning, the user may be asked to update changes in hisprofile, such as changes in his learning objectives. For example, he haschanged his interest, and presently, he wants to learn how to build ahouse. Based on his availability, appropriate classes and/or learningmaterials are directed to him.

The Web server can also track his progress as he is learning. In thisexample, assume that classes are available through his computer. Theserver can perform a number of tracking tasks. For example, the Webserver can mark the screen he looks at before he logs off from theserver; the Web server can keep track of the duration of time for him tofinish the course; and the server can keep track of whether or not hehas graduated from the course. His user profile can be updated by suchtracked information and analyzed data. Also, such information regardingthe learning user can be accessed by institute users.

In another example, assume that the user is an institute user who may beinterested in generating an advertisement on the Web server. As anexample, a Web page generated by the Web server for an institute userincludes a dialog box with an advertising button. Clicking that buttonby the institute user brings up an advertising file upload page, whichcan include questions, such as the size of the advertisement, thelocation, the pricing structure, and the time to post the advertisement.The location can specify the area on a typical screen, and the subjectmatter the screen is displaying. The user also can attach to the file,her advertisement clip, which can be a html page, a Java applet, anaudio stream, animated streaming data, such as a video stream or amultimedia stream, or other file formats, or some combination of theabove. The video stream or multimedia stream may be compressed bystandard algorithms, such as based on MPEG format. The advertisementclip can be used as a banner and can be linked to learning materialsrelated to the products sold by the institute user. When such learningmaterials are shown on a screen, the advertisement banner will be shownalso. Through the institute user's browser, he can upload the file withthe attachment clip to the Web server. In one embodiment, theadvertisement clip can be hypertext-linked to the institute user's homepage.

The Web server can monitor the number of hits on the page with theadvertisement, or the number of times the clip or the advertisement wasaccessed. The Web server can also monitor the number times theinstitute's own home page has been hypertext-linked. Such informationcan be stored as information regarding the corresponding users accessingthe clip or linking to the institute user's home page. If the users arelearning users, such information can be considered as informationregarding the learning users. Also, such information can be stored inthe institute user profile area.

The institute user may like to change its advertisement on the Webserver. In one embodiment, she is allowed to modify the scripts for theJava applet or the html page. She may be allowed to generate a modifiedclip to be uploaded to the Web server.

The institute user may be interested in accessing her profile todetermine the number of hits on the clip. Statistics, such as the typeof users accessing that clip, can also be stored in the profile area ofthe institute user.

The usage by the institute user with the results can be tracked, andstored in the institute user profile area.

Using a Web server to host the apparatus or a part of the apparatus,200, can make economic sense. The price of developing the apparatus, ora portion of the apparatus, 200, on a Web server and maintaining it maycost a few million dollars. However, once developed, many users canaccess information through it from many places and at any time. If thelearning users do not have to pay much to learn from it, one mainobstacle of learning—tuition—is removed. Not only can the server (a)give the learning users the freedom to choose when, and in manyoccasions, where to learn, and (b) guide the users to the appropriatelearning materials to fill their individual needs, learning from theserver is also relatively inexpensive. Many more will learn and benefitfrom the invention. This will enrich them, help their career and,ultimately, help their employers and the society.

From another perspective, with many people learning from the server, alarge database of information regarding learning users can be created.Many institute users are interested in the server in view of the largedatabase of information regarding learning users, and the heavy trafficby those users. Institute users are interested for many differentreasons. For example, they might want to use it to hire employees. Forcompanies to succeed, they need the right employees, and they arewilling to pay recruiters to get them. As an illustration, assume acompany hires 25 employees per year from the server, and the averageannual income with benefit of the 25 employees is $50,000. The companynormally pays at least 20% of the annual income to recruiters. Thistranslates to paying the recruiters $250,000 per year.

In additional to recruiting, the company can use the server to advertisetheir products and their jobs to users interested in them. Those userscan be easily identified by, for example, the learning materials theywork on, and their preferences as shown in their user profiles.

The company may also want to use the server to support their products.This can be done by having learning materials regarding their productsavailable for learning users of the server.

The company can also use the server as to find out users' interest intheir products. With learning materials on the products at the server,the company can measure users' interest in different features of theproducts by identifying how often materials regarding different featuresare being accessed, as discussed above.

Thus, institute users are willing to make reasonable payments to use theserver. They are probably willing to pay much higher than what learningusers are willing to pay. The institute users might even prefer toprovide learning users with free access to the server. This is becausethe institute users are interested in lots of information regardinglearning users, and a lot of traffic through the server.

Other embodiments of the invention will be apparent to those skilled inthe art from a consideration of this specification or practice of theinvention disclosed herein. It is intended that the specification andexamples be considered as exemplary only, with the true scope and spiritof the invention being indicated by the following claims.

1. A computing apparatus comprising: a first computing device; and anetworked storage device accessible at least via a network, thenetworked storage device coupled to the first computing device, and thenetworked storage device to have stored thereon instructions that, whenexecuted, cause the apparatus to: receive, via a web server, a webrequest from a user using a second computing device to access a firstset of materials via a network that includes the Internet, the webrequest including a user identifier identifying the user, and a serviceidentifier at least indicating to access the first set of materials;track at least some of the user's usage of the first set of materials,including accessing the first set of materials; and receive, via a webserver, a web request from a first entity using a third computing deviceto access information regarding the tracked user's usage of the firstset of materials, via a network that includes the Internet, the webrequest including a user identifier identifying the first entity, and aservice identifier at least indicating to access the informationregarding the tracked user's usage of the first set of materials;wherein the instructions, when executed, further cause the apparatus to:send advertising materials regarding the first entity via a network thatincludes the Internet, to the second computing device to be presented;and cause the generating of an accounting record to charge the firstentity so as to allow the first entity to access at least some of theinformation regarding the tracked user's usage of the first set ofmaterials.
 2. A computing apparatus as recited in claim 1, wherein theadvertising materials include information on a product of the firstentity.
 3. A computing apparatus as recited in claim 1, wherein theadvertising materials is sent to the second computing device in view ofan interest of the user regarding at least a product of the firstentity, to target the user.
 4. A computing apparatus as recited in claim1, wherein the first set of materials includes materials on a product ofthe first entity.
 5. A computing apparatus as recited in claim 4,wherein the sending of the advertising materials regarding the firstentity is at least in view of the user accessing the first set ofmaterials.
 6. A computing apparatus as recited in claim 4, wherein theadvertising materials regarding the first entity is sent to the secondcomputing device in view of an interest of the user regarding at least aproduct of the first entity, to target the user.
 7. A computingapparatus as recited in claim 4, wherein the instructions, whenexecuted, further cause the apparatus to direct the advertisingmaterials to be in a screen showing the product of the first entity. 8.A computing apparatus as recited in claim 1, wherein the instructions,when executed, further cause the apparatus to receive a piece oflocation information regarding where to place the advertising materialsof the first entity.
 9. A computing apparatus as recited in claim 8,wherein the piece of location information indicates placing theadvertising materials of the first entity to be in a screen showing aproduct of the first entity.
 10. A computing apparatus as recited inclaim 1, wherein the instructions, when executed, further cause theapparatus to receive a piece of timing information regarding when topresent the advertising materials of the first entity.
 11. A computingapparatus as recited in claim 1, wherein the instructions, whenexecuted, further cause the apparatus to receive a piece of informationregarding a duration of time to present the advertising materials of thefirst entity.
 12. A computing apparatus as recited in claim 1, whereinthe advertising materials include a link to a web page of the firstentity.
 13. A computing apparatus as recited in claim 1, wherein theadvertising materials are presented on a page, and wherein theinstructions, when executed, further cause the apparatus to track thenumber of times the page has been accessed.
 14. A computing apparatus asrecited in claim 1, wherein the instructions, when executed, furthercause the apparatus to track the number of times the advertisingmaterials regarding the first entity has been accessed.
 15. A computingapparatus as recited in claim 1, wherein the advertising materialsinclude a link to a web page of the first entity, and wherein theinstructions, when executed, further cause the apparatus to track thenumber of times the link to the web page has been accessed.
 16. Acomputing apparatus as recited in claim 1, wherein the first set ofmaterials includes materials on a product of the first entity, whereinthe materials on the product includes materials on a feature of theproduct, and wherein the instructions, when executed, further cause theapparatus to track the number of times the materials on the feature ofthe product has been accessed.
 17. A computing apparatus as recited inclaim 1, wherein the instructions, when executed, further cause theapparatus to allow the first entity to access a piece of informationresulted from activities of a plurality of users.
 18. A computingapparatus as recited in claim 1, wherein the instructions, whenexecuted, further cause the apparatus to restrict the first entity fromaccessing at least some information regarding the user in view of anindication from the user.